Learn R Programming

fExpressCertificates (version 1.3)

Distribution of the Brownian Bridge Minimum: Distribution of the Minimum of a Brownian Bridge

Description

Density function and random generation of the minimum \(m_T=\min_{t_0 \le t \le T}\) of a Brownian Bridge \(B_t\) between time \(t_0\) and \(T\).

Usage

rBrownianBridgeMinimum(n = 100, t0 = 0, T = 1, a = 0, b = 0, sigma = 1)
 dBrownianBridgeMinimum(x, t0 = 0, T = 1, a = 0, b = 0, sigma = 1)

Arguments

n

the number of samples to draw

x

a vector of minimum values to calculate the density for

t0

start time

T

end time

a

start value of the Brownian Bridge (B(t0)=a)

b

end value of the Brownian Bridge (B(T)=b)

sigma

volatility p.a., e.g. 0.2 for 20%

Value

simBrownianBridgeMinimum() returns a vector of simulated minimum values of length n.

densityBrownianBridgeMinimum returns a vector of length length(x) with density values

Details

rBrownianBridgeMinimum() simulates the minimum \(m(T)\) for a Brownian Bridge \(B(t)\) between \(t_0 \le t \le T\), i.e. a Brownian Motion \(W(t)\) constraint to \(W(t_0)=a\) and \(W(T)=b\). The simulation algorithm uses the conditional density \(f(m(T) = x | B(t_0)=a, B(T)=b)\) and is based on the exponential distribution given by Beskos et al. (2006), pp.1082--1083, which we generalized to the \(\sigma^2 \ne 1\) case.

The joint density function \(m(T)\) and \(W(T)\) is (see Beskos2006, pp.1082--1083 and Karatzas2008, p.95): $$ f_{m(T),W(T)}(b,a) = \frac{2 \cdot (a-2b)}{\sqrt{2\pi} \sigma^3 \sqrt{T^3}} \cdot \exp{\left\{ -\frac{(a-2b)^2}{2\sigma^2 T} \right\}} $$

With the density of \(W(T)\) $$ f_{W(T)}(a) = \frac{1}{\sqrt{2\pi} \sigma \sqrt{T}} \cdot \exp{\left\{ -\frac{a^2}{2\sigma^2 T} \right\}} $$ it follows for the conditional density of the minimum \(m(T) | W(T)=a\) $$ f_{m(T)|W(T)=a}(b) = \frac{2 \cdot (a-2b)}{\sigma^2 T} \cdot \exp{\left\{ -\frac{(a-2b)^2}{2\sigma^2 T} + \frac{a^2}{2\sigma^2 T} \right\}} $$

References

Beskos, A.; Papaspiliopoulos, O. and Roberts, G. O. (2006). Retrospective Exact Simulation of Diffusion Sample Paths with Applications Bernoulli, 12, 1077--1098

Karatzas/Shreve (2008). Brownian Motion and Stochastic Calculus, Springer, p.95

Examples

Run this code
# NOT RUN {
  # simulate 1000 samples from minimum distribution
  m <- rBrownianBridgeMinimum(n = 1000, t0 = 0, T = 1, a = 0.2, b = 0, sigma = 2)
    
  # and compare against the density
  x  <- seq(-6, 0, by=0.01)
  dm <- dBrownianBridgeMinimum(x, t0 = 0, T = 1, a = 0.2, b = 0, sigma = 2)
  
  plot(density(m))
  lines(x, dm, lty=2, col="red")
# }

Run the code above in your browser using DataLab